A complementary metal oxide semiconductor (CMOS) single photon avalanche detector (SPAD) comprises a p-n junction biased above its breakdown voltage, thus operating in Geiger mode. In this regime of operation, free carriers, such as photogenerated electron-hole pairs, can trigger an avalanche breakdown by impact ionization. SPAD photodiodes have an extremely large gain as a single electron causes a flow of charge (electron-hole pairs) proportional to the full-well capacitance and excess bias voltage of the photodiode. This typically will be in the range of tens to hundreds of thousands. The extremely large gain renders subsequent noise due to electronic processing insignificant. A single digital pulse is emitted for each absorbed photon with a timing accuracy of the order of tens to hundreds of picoseconds. These pulses can be counted or precisely timed for various purposes, such as ultra-low light imaging or time-resolved imaging. They may have applications in microscopy, range-sensing, biosensing or biomedical imaging.
One approach for merging SPAD pulses from different arrayed SPADS, or merging successive pulses from a single SPAD is to OR them together. This creates a problem of ‘pile up’ where one long SPAD pulse stops other SPAD pulses getting through. An approach to address this is to use a monostable circuit as a pulse shortener. However, the monostable circuit is a large and power hungry block, and a separate monostable circuit must be provided for each SPAD. So, the size and power consumption are significant issues for large SPAD arrays.